#ifndef PARSER_H
#define PARSER_H
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <string.h>

// used for max length of lines in files
#define MAXNUMCHARS 256

extern bool listOn;
extern bool symbolsOn;

void removeComments(FILE *fp, FILE *tempPtr);
void prepareCommands(FILE *fp, FILE *tempPtr);
bool isInstruction(char *str);
char* instructionType(char *str);
char* binInstrMapping(char *str);
char* binRegMapping(char *str);
char* strToBin(char *str, int length);
char* intToBin(int num, int length);
char* binExtend(char *str, int padding);
void commandParser(FILE *fp, FILE *tempPtr);

#endif
